Goal
Tensorflow (TF) is Google’s attempt to put the power of Deep Learning into the hands of developers around the world. It comes with a beginner & an advanced tutorial, as well as a course on Udacity. However, the materials attempt to introduce both ML and TF concurrently to solve a multi-feature problem — character recognition, which albeit interesting, unnecessarily convolutes understanding. Gentlest Tensorflow attempts to overcome that by showing how to do linear regression for a single feature problem, and expand from there.
Cheatsheet
cheatsheets/tensorflow_cheatsheet_1.png
Linear regression: single feature, single scalar outcome
Linear regression: multi-feature, single scalar outcome
Logistic regression: multi-feature, multi-class outcome
Code
All the code are in /code directory:
linear_regression_one_feature.py
ML with linear regression for a single feature
Example: predict house price from house size (single feature)
linear_regression_one_feature_with_tensorboard.py
Add visualization for ‘ML for single feature’ with Tensorboard
Use tf.scalar_summary, tf.histogram_summary to collect data for variables that we want to visualize
Use scope to collapse TF network graph in to expandable/collapsible black boxes to faciliate visualization
linear_regression_one_feature_using_mini_batch_with_tensorboard.py
Perform ‘stochastic/mini-batch/batch’ Gradient Descent with TF
The CUSTOMIZABLE section contains all the configurations that we can tweak, e.g., batch size, etc.
linear_regression_multi_feature_using_mini_batch_without_matrix_with_tensorboard.py
ML with linear regrssion for 2 features without using ‘matrix’
Create additional tf.Variable, tf.placeholder for each feature
IMPORTANT: This is a messy way to do ML with multiple features. This is provided as an explanation of multi-feature concept.
linear_regression_multi_feature_using_mini_batch_with_tensorboard.py
ML with linear regrssion for 2 features
Expanding existing W (tf.Variable) in matrix ‘height’, and existing x (tf.placeholder) in matrix ‘width’ to accomodate each feature